//package com.example.file_management.service;
//
//import com.example.file_management.utils.FileConverter;
//import org.springframework.stereotype.Service;
//import org.springframework.web.multipart.MultipartFile;
//
//import java.io.File;
//import java.nio.file.Files;
//import java.nio.file.Path;
//import java.nio.file.Paths;
//import java.util.UUID;
//
//@Service
//public class FileService {
//
//    private static final String UPLOAD_DIR = "E:/filestest/";
//
//    // 文件上传，保持原始格式
//    public String uploadFile(MultipartFile file) throws Exception {
//        Files.createDirectories(Paths.get(UPLOAD_DIR));
//
//        String originalFileName = file.getOriginalFilename();
//        assert originalFileName != null;
//        String fileExt = originalFileName.substring(originalFileName.lastIndexOf("."));
//        String uniqueFileName = UUID.randomUUID() + fileExt;
//        Path filePath = Paths.get(UPLOAD_DIR, uniqueFileName);
//
//        Files.write(filePath, file.getBytes());
//
//        return uniqueFileName; // 返回文件名，供前端调用
//    }
//
//    // 预览时动态转换 PDF
//    public String convertToPDFForPreview(String fileName) throws Exception {
//        Path originalFilePath = Paths.get(UPLOAD_DIR, fileName);
//        if (!Files.exists(originalFilePath)) {
//            throw new Exception("文件不存在：" + fileName);
//        }
//
//        // 生成 PDF 预览文件
//        String pdfFileName = fileName.replaceFirst("\\.[^.]+$", ".pdf");
//        Path pdfFilePath = Paths.get(UPLOAD_DIR, pdfFileName);
//
//        if (!Files.exists(pdfFilePath)) {
//            FileConverter.convertToPDF(originalFilePath.toString(), pdfFilePath.toString());
//        }
//
//        return pdfFileName; // 返回 PDF 预览文件路径
//    }
//}
